package com.cty._01_Base._06_PrintListInReversedOrder;

/**
 * @Auther: cty
 * @Date: 2020/6/28 8:53
 * @Description: 面试题6：从尾到头打印列表
 * 题目：输入一个链表的头节点，从尾到头反过来打印出每个节点的值。
 * @version: 1.0
 */
public class PrintListInReversedOrder {

    /**
     * 从尾到头打印链表
     * @param first
     */
    public static void printLinkedList(Node first){
        if(first == null)
            return;

        recPrintLinkedList(first);
        System.out.println();
    }   // end printLinkedList()

    /**
     * 递归实现从尾到头打印链表
     * @param node
     */
    private static void recPrintLinkedList(Node node){
        if(node == null)
            return;
        else {
            recPrintLinkedList(node.next);
            System.out.print(node.key + " ");
        }
    }  // end recPrintLinkedList()

}  // end class
